home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_xemacs.idb / usr / freeware / lib / xemacs-20.4 / lisp / its / its-han-kata.el.z / its-han-kata.el
Encoding:
Text File  |  1998-05-21  |  8.6 KB  |  269 lines

  1. ;; Basic Roma-to-HankakuKana (jisx0201) Translation Table for Egg
  2.  
  3. ;; This file is part of Egg on Mule (Japanese Environment)
  4.  
  5. ;; Egg is distributed in the forms of patches to GNU
  6. ;; Emacs under the terms of the GNU EMACS GENERAL PUBLIC
  7. ;; LICENSE which is distributed along with GNU Emacs by the
  8. ;; Free Software Foundation.
  9.  
  10. ;; Egg is distributed in the hope that it will be useful,
  11. ;; but WITHOUT ANY WARRANTY; without even the implied
  12. ;; warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
  13. ;; PURPOSE.  See the GNU EMACS GENERAL PUBLIC LICENSE for
  14. ;; more details.
  15.  
  16. ;; You should have received a copy of the GNU EMACS GENERAL
  17. ;; PUBLIC LICENSE along with Nemacs; see the file COPYING.
  18. ;; If not, write to the Free Software Foundation, 675 Mass
  19. ;; Ave, Cambridge, MA 02139, USA.
  20.  
  21. ;;; 92.9.24  created for Mule Ver.0.9.6 by K.Shibata <shibata@sgi.co.jp>
  22.  
  23. (require 'egg-jisx0201)
  24.  
  25. (its-define-mode "roma-han-kata"  "(I1'(B" t)
  26.  
  27. (dolist (aa '("k" "s" "t" "h" "y" "r" "w" "g" "z" "d" "b"
  28.          "p" "c" "f" "j" "v"))
  29.   (its-defrule (concat aa aa) "(I/(B" aa))
  30.  
  31. (its-defrule "tch"  "(I/(B" "ch")
  32.  
  33. (dolist (q1 '("b" "m" "p"))
  34.   (its-defrule (concat "m" q1) "(I](B" q1))
  35.  
  36. (its-defrule "N" "(I](B")
  37.  
  38. (defvar enable-double-n-syntax nil "*Enable \"nn\" input for \"(I](B\"")
  39.  
  40. (its-defrule-conditional "n"
  41.   ((not enable-double-n-syntax) "(I](B")
  42.   (t nil))
  43. (its-defrule-conditional "nn"
  44.   ( enable-double-n-syntax "(I](B")
  45.   (t nil))
  46.  
  47. (its-defrule "n'" "(I](B")
  48.  
  49. (let ((small '"x" ))
  50.   (its-defrule (concat small "a") "(I'(B")
  51.   (its-defrule (concat small "i") "(I((B")
  52.   (its-defrule (concat small "u") "(I)(B")
  53.   (its-defrule (concat small "e") "(I*(B")
  54.   (its-defrule (concat small "o") "(I+(B")
  55.   (its-defrule (concat small "ya") "(I,(B")
  56.   (its-defrule (concat small "yu") "(I-(B")
  57.   (its-defrule (concat small "yo") "(I.(B")
  58.   (its-defrule (concat small "tu") "(I/(B")
  59.   (its-defrule (concat small "tsu") "(I/(B")
  60.   )
  61.  
  62.  
  63. (its-defrule   "a"    "(I1(B")
  64. (its-defrule   "i"    "(I2(B")
  65. (its-defrule   "u"    "(I3(B")
  66. (its-defrule   "e"    "(I4(B")
  67. (its-defrule   "o"    "(I5(B")
  68. (its-defrule   "ka"   "(I6(B")
  69. (its-defrule   "ki"   "(I7(B")
  70. (its-defrule   "ku"   "(I8(B")
  71. (its-defrule   "ke"   "(I9(B")
  72. (its-defrule   "ko"   "(I:(B")
  73. (its-defrule   "kya"  "(I7,(B")
  74. (its-defrule   "kyu"  "(I7-(B")
  75. (its-defrule   "kye"  "(I7*(B")
  76. (its-defrule   "kyo"  "(I7.(B")
  77. (its-defrule   "sa"   "(I;(B")
  78. (its-defrule   "si"   "(I<(B")
  79. (its-defrule   "su"   "(I=(B")
  80. (its-defrule   "se"   "(I>(B")
  81. (its-defrule   "so"   "(I?(B")
  82. (its-defrule   "sya"  "(I<,(B")
  83. (its-defrule   "syu"  "(I<-(B")
  84. (its-defrule   "sye"  "(I<*(B")
  85. (its-defrule   "syo"  "(I<.(B")
  86. (its-defrule   "sha"  "(I<,(B")
  87. (its-defrule   "shi"  "(I<(B")
  88. (its-defrule   "shu"  "(I<-(B")
  89. (its-defrule   "she"  "(I<*(B")
  90. (its-defrule   "sho"  "(I<.(B")
  91. (its-defrule   "ta"   "(I@(B")
  92. (its-defrule   "ti"   "(IA(B")
  93. (its-defrule   "tu"   "(IB(B")
  94. (its-defrule   "te"   "(IC(B")
  95. (its-defrule   "to"   "(ID(B")
  96. (its-defrule   "tya"  "(IA,(B")
  97. (its-defrule   "tyi"  "(IC((B")
  98. (its-defrule   "tyu"  "(IA-(B")
  99. (its-defrule   "tye"  "(IA*(B")
  100. (its-defrule   "tyo"  "(IA.(B")
  101. (its-defrule   "tsu"  "(IB(B")
  102. (its-defrule   "cha"  "(IA,(B")
  103. (its-defrule   "chi"  "(IA(B")
  104. (its-defrule   "chu"  "(IA-(B")
  105. (its-defrule   "che"  "(IA*(B")
  106. (its-defrule   "cho"  "(IA.(B")
  107. (its-defrule   "na"   "(IE(B")
  108. (its-defrule   "ni"   "(IF(B")
  109. (its-defrule   "nu"   "(IG(B")
  110. (its-defrule   "ne"   "(IH(B")
  111. (its-defrule   "no"   "(II(B")
  112. (its-defrule   "nya"  "(IF,(B")
  113. (its-defrule   "nyu"  "(IF-(B")
  114. (its-defrule   "nye"  "(IF*(B")
  115. (its-defrule   "nyo"  "(IF.(B")
  116. (its-defrule   "ha"   "(IJ(B")
  117. (its-defrule   "hi"   "(IK(B")
  118. (its-defrule   "hu"   "(IL(B")
  119. (its-defrule   "he"   "(IM(B")
  120. (its-defrule   "ho"   "(IN(B")
  121. (its-defrule   "hya"  "(IK,(B")
  122. (its-defrule   "hyu"  "(IK-(B")
  123. (its-defrule   "hye"  "(IK*(B")
  124. (its-defrule   "hyo"  "(IK.(B")
  125. (its-defrule   "fa"   "(IL'(B")
  126. (its-defrule   "fi"   "(IL((B")
  127. (its-defrule   "fu"   "(IL(B")
  128. (its-defrule   "fe"   "(IL*(B")
  129. (its-defrule   "fo"   "(IL+(B")
  130. (its-defrule   "ma"   "(IO(B")
  131. (its-defrule   "mi"   "(IP(B")
  132. (its-defrule   "mu"   "(IQ(B")
  133. (its-defrule   "me"   "(IR(B")
  134. (its-defrule   "mo"   "(IS(B")
  135. (its-defrule   "mya"  "(IP,(B")
  136. (its-defrule   "myu"  "(IP-(B")
  137. (its-defrule   "mye"  "(IP*(B")
  138. (its-defrule   "myo"  "(IP.(B")
  139. (its-defrule   "ya"   "(IT(B")
  140. (its-defrule   "yi"   "(I2(B")
  141. (its-defrule   "yu"   "(IU(B")
  142. (its-defrule   "ye"   "(I2*(B")
  143. (its-defrule   "yo"   "(IV(B")
  144. (its-defrule   "ra"   "(IW(B")
  145. (its-defrule   "ri"   "(IX(B")
  146. (its-defrule   "ru"   "(IY(B")
  147. (its-defrule   "re"   "(IZ(B")
  148. (its-defrule   "ro"   "(I[(B")
  149. (its-defrule   "la"   "(IW(B")
  150. (its-defrule   "li"   "(IX(B")
  151. (its-defrule   "lu"   "(IY(B")
  152. (its-defrule   "le"   "(IZ(B")
  153. (its-defrule   "lo"   "(I[(B")
  154. (its-defrule   "rya"  "(IX,(B")
  155. (its-defrule   "ryu"  "(IX-(B")
  156. (its-defrule   "rye"  "(IX*(B")
  157. (its-defrule   "ryo"  "(IX.(B")
  158. (its-defrule   "lya"  "(IX,(B")
  159. (its-defrule   "lyu"  "(IX-(B")
  160. (its-defrule   "lye"  "(IX*(B")
  161. (its-defrule   "lyo"  "(IX.(B")
  162. (its-defrule   "wa"   "(I\(B")
  163. (its-defrule   "wu"   "(I3(B")
  164. (its-defrule   "wo"   "(I&(B")
  165. (its-defrule   "ga"   "(I6^(B")
  166. (its-defrule   "gi"   "(I7^(B")
  167. (its-defrule   "gu"   "(I8^(B")
  168. (its-defrule   "ge"   "(I9^(B")
  169. (its-defrule   "go"   "(I:^(B")
  170. (its-defrule   "gya"  "(I7^,(B")
  171. (its-defrule   "gyu"  "(I7^-(B")
  172. (its-defrule   "gye"  "(I7^*(B")
  173. (its-defrule   "gyo"  "(I7^.(B")
  174. (its-defrule   "za"   "(I;^(B")
  175. (its-defrule   "zi"   "(I<^(B")
  176. (its-defrule   "zu"   "(I=^(B")
  177. (its-defrule   "ze"   "(I>^(B")
  178. (its-defrule   "zo"   "(I?^(B")
  179. (its-defrule   "zya"  "(I<^,(B")
  180. (its-defrule   "zyu"  "(I<^-(B")
  181. (its-defrule   "zye"  "(I<^*(B")
  182. (its-defrule   "zyo"  "(I<^.(B")
  183. (its-defrule   "ja"   "(I<^,(B")
  184. (its-defrule   "ji"   "(I<^(B")
  185. (its-defrule   "ju"   "(I<^-(B")
  186. (its-defrule   "je"   "(I<^*(B")
  187. (its-defrule   "jo"   "(I<^.(B")
  188. (its-defrule   "da"   "(I@^(B")
  189. (its-defrule   "di"   "(IA^(B")
  190. (its-defrule   "du"   "(IB^(B")
  191. (its-defrule   "de"   "(IC^(B")
  192. (its-defrule   "do"   "(ID^(B")
  193. (its-defrule   "dya"  "(IA^,(B")
  194. (its-defrule   "dyi"  "(IA^((B")
  195. (its-defrule   "dyu"  "(IA^-(B")
  196. (its-defrule   "dye"  "(IA^*(B")
  197. (its-defrule   "dyo"  "(IA^.(B")
  198. (its-defrule   "ba"   "(IJ^(B")
  199. (its-defrule   "bi"   "(IK^(B")
  200. (its-defrule   "bu"   "(IL^(B")
  201. (its-defrule   "be"   "(IM^(B")
  202. (its-defrule   "bo"   "(IN^(B")
  203. (its-defrule   "va"   "(I3^'(B")
  204. (its-defrule   "vi"   "(I3^((B")
  205. (its-defrule   "vu"   "(I3^(B")
  206. (its-defrule   "ve"   "(I3^*(B")
  207. (its-defrule   "vo"   "(I3^+(B")
  208. (its-defrule   "bya"  "(IK^,(B")
  209. (its-defrule   "byu"  "(IK^-(B")
  210. (its-defrule   "bye"  "(IK^*(B")
  211. (its-defrule   "byo"  "(IK^.(B")
  212. (its-defrule   "pa"   "(IJ_(B")
  213. (its-defrule   "pi"   "(IK_(B")
  214. (its-defrule   "pu"   "(IL_(B")
  215. (its-defrule   "pe"   "(IM_(B")
  216. (its-defrule   "po"   "(IN_(B")
  217. (its-defrule   "pya"  "(IK_,(B")
  218. (its-defrule   "pyu"  "(IK_-(B")
  219. (its-defrule   "pye"  "(IK_*(B")
  220. (its-defrule   "pyo"  "(IK_.(B")
  221. (its-defrule   "kwi"  "(I8((B")
  222. (its-defrule   "kwu"  "(I8(B")
  223. (its-defrule   "kwe"  "(I8*(B")
  224. (its-defrule   "kwo"  "(I8+(B")
  225. (its-defrule   "gwi"  "(I8^((B")
  226. (its-defrule   "gwu"  "(I8^(B")
  227. (its-defrule   "gwe"  "(I8^*(B")
  228. (its-defrule   "gwo"  "(I8^+(B")
  229. (its-defrule   "tsa"  "(IB'(B")
  230. (its-defrule   "tsi"  "(IB((B")
  231. (its-defrule   "tse"  "(IB*(B")
  232. (its-defrule   "tso"  "(IB+(B")
  233. (its-defrule   "xka"  "(I6(B")
  234. (its-defrule   "xke"  "(I9(B")
  235. (its-defrule   "xti"  "(IC((B")
  236. (its-defrule   "xdi"  "(IA^((B")
  237. (its-defrule   "xdu"  "(ID^)(B")
  238. (its-defrule   "xde"  "(IA^*(B")
  239. (its-defrule   "xdo"  "(ID^+(B")
  240. (its-defrule   "xwi"  "(I3((B")
  241. (its-defrule   "xwe"  "(I3*(B")
  242. (its-defrule   "xwo"  "(I3+(B")
  243.  
  244. (its-defrule   "-"   "(I0(B")
  245. (its-defrule   "["    "(I"(B")
  246. (its-defrule   "]"    "(I#(B")
  247. (its-defrule   "z/"   "(I%(B")
  248.  
  249. (defvar use-kuten-for-period t "*(IK_X5D^$B$r6gE@$KJQ49$9$k(B")
  250. (defvar use-touten-for-comma t "*(I:]O$B$rFIE@$KJQ49$9$k(B")
  251.  
  252. (its-defrule-conditional "."
  253.   (use-kuten-for-period "(I!(B")
  254.   (t "."))
  255.  
  256. (its-defrule-conditional ","
  257.   (use-touten-for-comma "(I$(B")
  258.   (t ","))
  259.  
  260. (its-defrule (concat zenkaku-escape ",")  "$B!$(B")
  261. (its-defrule (concat zenkaku-escape ".")  "$B!%(B")
  262.  
  263. (defun its:select-hankaku-katakana ()
  264.   (interactive)
  265.   (its:select-mode "roma-han-kata"))
  266.  
  267. (define-key mule-keymap "x" 'its:select-hankaku-katakana)
  268. (define-key fence-mode-map "\e\C-x" 'its:select-hankaku-katakana)
  269.